gtk4.git
12 years agoUpdate all internal users of gtk_dialog_get_action_area
Matthias Clasen [Fri, 17 Jan 2014 16:26:11 +0000 (11:26 -0500)]
Update all internal users of gtk_dialog_get_action_area

Some of these should be revisited and fixed. For now,
just avoid the deprecation warnings.

12 years agodialog: Mark gtk_dialog_get_action_area as deprecated
Matthias Clasen [Fri, 17 Jan 2014 17:01:47 +0000 (12:01 -0500)]
dialog: Mark gtk_dialog_get_action_area as deprecated

Direct access to the action area by applications makes it much more
difficult to make changes to GtkDialog. Therefore, deprecate this
function.

12 years agodemo: Add new button box layouts
William Jon McCann [Sun, 12 Jan 2014 03:46:19 +0000 (22:46 -0500)]
demo: Add new button box layouts

This adds a test case for the new expand layout.

https://bugzilla.gnome.org/show_bug.cgi?id=720059

12 years agobutton box: Set linked style for extend
Matthias Clasen [Fri, 17 Jan 2014 17:39:30 +0000 (12:39 -0500)]
button box: Set linked style for extend

This is needed for proper styling of the new extend-placement
in button boxes.

12 years agoAdd an expand button box type
William Jon McCann [Sun, 12 Jan 2014 01:27:42 +0000 (20:27 -0500)]
Add an expand button box type

https://bugzilla.gnome.org/show_bug.cgi?id=720059

12 years agowindow: Allow unsetting custom titlebar
William Jon McCann [Fri, 10 Jan 2014 20:25:27 +0000 (15:25 -0500)]
window: Allow unsetting custom titlebar

https://bugzilla.gnome.org/show_bug.cgi?id=720059

12 years agoheaderbar: Set a minimum size for the title
William Jon McCann [Fri, 10 Jan 2014 21:15:17 +0000 (16:15 -0500)]
headerbar: Set a minimum size for the title

https://bugzilla.gnome.org/show_bug.cgi?id=720059

12 years agoUse gtk_window_close for gtk_dialog_close
Paolo Borelli [Fri, 17 Jan 2014 18:24:27 +0000 (19:24 +0100)]
Use gtk_window_close for gtk_dialog_close

We manually synthethized the delete event, but now we have the
corresponding method in GtkWindow

12 years agowidget: Add deprecation annotations for {get,set}_margin_{left,right}
Debarshi Ray [Fri, 17 Jan 2014 13:15:34 +0000 (14:15 +0100)]
widget: Add deprecation annotations for {get,set}_margin_{left,right}

Fallout from 9921bec63a3e67e2c2e38ca734590909a9f734b5

12 years ago[l10n] Updated Estonian translation
Mattias Põldaru [Fri, 17 Jan 2014 15:47:55 +0000 (17:47 +0200)]
[l10n] Updated Estonian translation

12 years agoUpdated Spanish translation
Daniel Mustieles [Wed, 15 Jan 2014 09:20:21 +0000 (10:20 +0100)]
Updated Spanish translation

12 years agoUpdated POTFILES.skip
Piotr Drąg [Tue, 14 Jan 2014 23:53:10 +0000 (00:53 +0100)]
Updated POTFILES.skip

12 years agoBump version
Matthias Clasen [Tue, 14 Jan 2014 20:20:59 +0000 (15:20 -0500)]
Bump version

12 years agoAlways return FALSE from the notebook leave_notify handler
Paolo Borelli [Tue, 14 Jan 2014 19:29:46 +0000 (20:29 +0100)]
Always return FALSE from the notebook leave_notify handler

As discussed on IRC with Benjamin, this should not make much
difference in practice, but it is more correct

12 years agoReadd line removed by mistake in the previous commit
Paolo Borelli [Tue, 14 Jan 2014 19:23:52 +0000 (20:23 +0100)]
Readd line removed by mistake in the previous commit

12 years agoPrelight notebook tab
Paolo Borelli [Sat, 11 Jan 2014 18:15:18 +0000 (19:15 +0100)]
Prelight notebook tab

Set the prelight state when hovering a notebook tab with the mouse.

https://bugzilla.gnome.org/show_bug.cgi?id=711233

12 years agoMake the action bar reftest reliable
Matthias Clasen [Tue, 14 Jan 2014 19:05:37 +0000 (14:05 -0500)]
Make the action bar reftest reliable

12 years agoUpdates
Matthias Clasen [Tue, 14 Jan 2014 11:21:21 +0000 (06:21 -0500)]
Updates

12 years agoUpdate expected output for tree.ui
Matthias Clasen [Tue, 14 Jan 2014 18:14:51 +0000 (13:14 -0500)]
Update expected output for tree.ui

Now that the utf8 actually appears...

12 years agoRun accessibility tests in en_US.utf8
Matthias Clasen [Tue, 14 Jan 2014 18:11:42 +0000 (13:11 -0500)]
Run accessibility tests in en_US.utf8

Previously, we were just using the C locale, which breaks
some of our fancy utf8 output for checkmarks and so on.

12 years agoGtkApplicationWindow: give up on handling dispose
Ryan Lortie [Tue, 14 Jan 2014 15:33:13 +0000 (10:33 -0500)]
GtkApplicationWindow: give up on handling dispose

Stop trying to deal with "theoretical possibilities".

We can't possibly continue to be a faithful GActionGroup implementation
across dispose because dispose has a side effect of removing everyone's
signal handlers.

The code that we ran after the dispose chainup to do all of the fancy
signal emulation was therefore dead.  The test that aimed to verify this
was buggy itself due to an uninitialised variable, so really, it never
worked at all.

We keep the re-ordering of the chainup from the original commit to avoid having
trouble with GtkActionMuxer and keep the checks in place that will prevent an
outright segfault in the case that someone else tries to use the interface
post-dispose.

https://bugzilla.gnome.org/show_bug.cgi?id=722189

12 years agotreemodelfilter: Fix typo in API docs
Bastien Nocera [Tue, 14 Jan 2014 14:02:26 +0000 (15:02 +0100)]
treemodelfilter: Fix typo in API docs

12 years agoAdd some treeview a11y tests
Matthias Clasen [Tue, 14 Jan 2014 04:31:05 +0000 (23:31 -0500)]
Add some treeview a11y tests

12 years agoA11y: Fix text functions for table cells
Mike Gorse [Tue, 7 Jan 2014 21:06:13 +0000 (15:06 -0600)]
A11y: Fix text functions for table cells

Keep the PangoLayout around, and refresh in update_cache.

https://bugzilla.gnome.org/show_bug.cgi?id=707729

12 years agowindow: add an is-maximized property to GtkWindow
Cosimo Cecchi [Wed, 24 Apr 2013 19:45:49 +0000 (15:45 -0400)]
window: add an is-maximized property to GtkWindow

With proper notifications, plus an accessor method for that state. This
allows client to just listen to notify::is-maximized instead of tracking
window-state-event.

https://bugzilla.gnome.org/show_bug.cgi?id=698786

12 years agoDon't implement popup_menu in GtkWindow
Matthias Clasen [Tue, 14 Jan 2014 03:59:59 +0000 (22:59 -0500)]
Don't implement popup_menu in GtkWindow

This leads to disastruous results, since each menu is itself
in a GtkWindow, so holding down the menu key leads to a neverending
cascade of menus on top of menus.

https://bugzilla.gnome.org/show_bug.cgi?id=722106

12 years agoFix memory leak in GtkTreeViewAccessible
John Lindgren [Sun, 12 Jan 2014 07:07:00 +0000 (07:07 +0000)]
Fix memory leak in GtkTreeViewAccessible

https://bugzilla.gnome.org/show_bug.cgi?id=722030

12 years agoAdd separator before "Always on Top" to the CSD window
Yosef Or Boczko [Mon, 13 Jan 2014 05:49:41 +0000 (07:49 +0200)]
Add separator before "Always on Top" to the CSD window

https://bugzilla.gnome.org/show_bug.cgi?id=722076

12 years agoFix a memory leak
Matthias Clasen [Tue, 14 Jan 2014 03:22:29 +0000 (22:22 -0500)]
Fix a memory leak

https://bugzilla.gnome.org/show_bug.cgi?id=722029

12 years agogdk: Don't leak GValue when xsetting is unknown
Tim Lunn [Mon, 13 Jan 2014 01:12:39 +0000 (12:12 +1100)]
gdk: Don't leak GValue when xsetting is unknown

https://bugzilla.gnome.org/show_bug.cgi?id=722070

12 years agoreftests: Add reftest for 0px border fix
Benjamin Otte [Tue, 14 Jan 2014 02:33:24 +0000 (03:33 +0100)]
reftests: Add reftest for 0px border fix

https://bugzilla.gnome.org/show_bug.cgi?id=721800

12 years agothemingengine: Don't draw 0px borders
Benjamin Otte [Tue, 14 Jan 2014 02:22:15 +0000 (03:22 +0100)]
themingengine: Don't draw 0px borders

Theming code gets confused when computing the spacing for 0px wide dots
and then divides by 0. And then cairo complains and stops drawing
anything forever out of spite and then we end up with a single color
screen.

https://bugzilla.gnome.org/show_bug.cgi?id=721800

12 years agoUpdated Spanish translation
Daniel Mustieles [Mon, 13 Jan 2014 13:15:34 +0000 (14:15 +0100)]
Updated Spanish translation

12 years agobuild/: Rename a Shared MSVC NMake Makefile
Chun-wei Fan [Mon, 13 Jan 2014 09:19:07 +0000 (17:19 +0800)]
build/: Rename a Shared MSVC NMake Makefile

Rename testsrules_msvc.mak to detectenv_msvc.mak and remove some package-
specific stuff from it, to reflect on the nature that this NMake Makefile
is shared.

12 years agoMSVC Builds: Rework Introspection Build
Chun-wei Fan [Mon, 13 Jan 2014 08:05:00 +0000 (16:05 +0800)]
MSVC Builds: Rework Introspection Build

The current approach of building the introspection files for GTK works, but
is often cumbersome as one needs to set many environmental variables before
launching a solution file, which runs a Windows batch script to generate
the .gir/.typelib files. It was also possible to hand-run the batch script
from the Visual Studio command prompt, but even more environmental
variables need to be set.

This changes the approach to build the introspection files using an NMake
Makefile (but elimating from the Visual Studio Project Files the part to
build the introspection files) to:
-Make it clearer to the person building the introspection files what
 environmental variables are needed, specifically for PKG_CONFIG_PATH and
 MINGWDIR and CFG (formerly CONF). Setting stuff like VSVER, PLAT and BASEDIR
 is no longer required, which was a bit clunky.

-Allows some more easier flexibility on the build of the intropsection files.

12 years agoUpdated Greek translation
Dimitris Spingos [Mon, 13 Jan 2014 07:51:46 +0000 (09:51 +0200)]
Updated Greek translation

12 years agoUpdated Hebrew translation
Yosef Or Boczko [Mon, 13 Jan 2014 05:44:27 +0000 (07:44 +0200)]
Updated Hebrew translation

12 years agoUpdate gtk-install.*props
Chun-wei Fan [Mon, 13 Jan 2014 04:39:04 +0000 (12:39 +0800)]
Update gtk-install.*props

Make sure the needed public headers for GTK master is "installed", and re-
order some items so that it is easier when the headers lists are
automatically acquired from the various Makefile.am's.

12 years agobuild/win32/vs9/Makefile: Fix typo
Chun-wei Fan [Mon, 13 Jan 2014 04:02:12 +0000 (12:02 +0800)]
build/win32/vs9/Makefile: Fix typo

12 years agoAdd move and resize to the csd window menu
Matthias Clasen [Mon, 13 Jan 2014 03:09:52 +0000 (22:09 -0500)]
Add move and resize to the csd window menu

With the previous commit, these operations can be implemented
now.

12 years agoX11: Support keyboard-initiated move and resize operations
Matthias Clasen [Mon, 13 Jan 2014 03:06:59 +0000 (22:06 -0500)]
X11: Support keyboard-initiated move and resize operations

The EWMH defines _NET_WM_MOVERESIZE_SIZE_KEYBOARD and
_NET_WM_MOVERESIZE_MOVE_KEYBOARD for operations that are not
initiated by a button-press event. Allow using these by passing
a button of 0 to gdk_window_begin_move/resize_drag.

12 years agoRedo csd window-dragging
Matthias Clasen [Mon, 13 Jan 2014 02:01:43 +0000 (21:01 -0500)]
Redo csd window-dragging

The window-dragging code had a number of issues: The code was
starting a drag on every button press, never bothering to cancel
them. This leads to the odd hand cursor occurring between the two
clicks to maximize. We relied on GDK's multi-click detection, which
gives us triple-clicks when we really want sequences of double-clicks.
Lastly, we didn't propery restrict double-click handling to the primary
button, so e.g. if you had a window on an empty workspace, double-right
click on the titlebar would maximize it, which is not intended.

This commit solves all three problem by a doing our own double-click
detection, and only starting a drag when the pointer goes out of
'double-click range'. We change the way dragging is implemented for
menubars and toolbars to just letting events bubble up, so they
get the same behaviour as the titlebar. To make this work, we
have to select for pointer motion events in a few more places.

12 years agogtk-demo: Use primary-toolbar style in the application example
Matthias Clasen [Mon, 13 Jan 2014 01:12:31 +0000 (20:12 -0500)]
gtk-demo: Use primary-toolbar style in the application example

Adwaita correctly restricts window-dragging to primary toolbars,
Mark our toolbar as primary to test this.

12 years agoSome struct repacking
Matthias Clasen [Sun, 12 Jan 2014 14:39:23 +0000 (09:39 -0500)]
Some struct repacking

Save a few bytes here and there.

12 years agoUpdated Galician translations
Fran Diéguez [Mon, 13 Jan 2014 00:47:06 +0000 (01:47 +0100)]
Updated Galician translations

12 years agoChanged obsolete FSF portal addresses to web address
Andika Triwidada [Sun, 12 Jan 2014 12:56:49 +0000 (19:56 +0700)]
Changed obsolete FSF portal addresses to web address
Fixed https://bugzilla.gnome.org/show_bug.cgi?id=721530

12 years agogtk3-demo: avoid a resizing problem
Matthias Clasen [Sat, 11 Jan 2014 23:06:06 +0000 (18:06 -0500)]
gtk3-demo: avoid a resizing problem

Two changes that sneaked in during the GtkApplication port
made it so that the window would not let you shrink it again
after you've made it larger. This also yielded very surprising
results when unmaximizing the window: it would come back to
have a minimum width slightly larger than the screen, making
maximization fail from then on.

12 years agoUpdate Chinese simplified translation
Tong Hui [Sat, 11 Jan 2014 02:26:28 +0000 (10:26 +0800)]
Update Chinese simplified translation

12 years agogtkwindow: Rename get_decoration_size => get_shadow_width
Jasper St. Pierre [Thu, 9 Jan 2014 19:44:34 +0000 (14:44 -0500)]
gtkwindow: Rename get_decoration_size => get_shadow_width

12 years agogtkapplication: add missing annotation for set_accels_for_action
Ignacio Casal Quinteiro [Fri, 10 Jan 2014 14:19:05 +0000 (15:19 +0100)]
gtkapplication: add missing annotation for set_accels_for_action

12 years agoREADME: Add note about gtk_text_view_add_child_in_window changes
Alexander Larsson [Fri, 10 Jan 2014 11:08:11 +0000 (12:08 +0100)]
README: Add note about gtk_text_view_add_child_in_window changes

12 years agoGtkTextView: Fix scrolling of added children
Alexander Larsson [Wed, 8 Jan 2014 14:26:15 +0000 (15:26 +0100)]
GtkTextView: Fix scrolling of added children

The behaviour of gtk_text_view_add_child_in_window() used to be
quite broken. It scrolled with the window during scrolling, then
jumped to the absolute position when the widget resized. Furthermore,
in 3.10 we broke the first feature, making it always be fixed.

The "proper" way to handle this is to always follow scrolling. This
is what the only user so far (gedit) wants, and if you want some
kind of overlay you should use GtkOverlay instead.

So, this changes the behaviour to something that is internally consistent
and works. I.e. all added widgets scroll with the textview as needed.

https://bugzilla.gnome.org/show_bug.cgi?id=711826

12 years agotesttextview: Add test for gtk_text_view_add_child_in_window
Alexander Larsson [Wed, 8 Jan 2014 13:02:17 +0000 (14:02 +0100)]
testtextview: Add test for gtk_text_view_add_child_in_window

https://bugzilla.gnome.org/show_bug.cgi?id=711826

12 years ago[l10n] Updated Italian translation.
Milo Casagrande [Fri, 10 Jan 2014 08:08:12 +0000 (09:08 +0100)]
[l10n] Updated Italian translation.

12 years agox11: Add/Fix '(type *)' g-i annotations
Rico Tzschichholz [Thu, 9 Jan 2014 20:47:04 +0000 (21:47 +0100)]
x11: Add/Fix '(type *)' g-i annotations

12 years agoSimplify GtkActionHelper
Ryan Lortie [Wed, 8 Jan 2014 23:20:27 +0000 (18:20 -0500)]
Simplify GtkActionHelper

Now that the last GMenuModel-based user of GtkActionHelper is gone, we
can substantially simplify it.

https://bugzilla.gnome.org/show_bug.cgi?id=721836

12 years agoUse GtkMenuTracker for Quartz backend.
William Hua [Wed, 8 Jan 2014 22:27:43 +0000 (17:27 -0500)]
Use GtkMenuTracker for Quartz backend.

https://bugzilla.gnome.org/show_bug.cgi?id=710351

12 years agoMove get_key_equivalent() to gdk quartz utils.
William Hua [Wed, 8 Jan 2014 15:58:56 +0000 (10:58 -0500)]
Move get_key_equivalent() to gdk quartz utils.

https://bugzilla.gnome.org/show_bug.cgi?id=710351

12 years agoUpdated German translation
Christian Kirbach [Wed, 8 Jan 2014 22:26:41 +0000 (23:26 +0100)]
Updated German translation

12 years agoGtkMenuTracker: fix hidden-when='' vs. separators
Ryan Lortie [Wed, 8 Jan 2014 19:31:16 +0000 (14:31 -0500)]
GtkMenuTracker: fix hidden-when='' vs. separators

Ensure that adding hidden-when='' to a menu item does not produce an
extra separator item as a side effect.

https://bugzilla.gnome.org/show_bug.cgi?id=688421

12 years agobloatpad: test hidden-when=''
Ryan Lortie [Sat, 4 Jan 2014 07:52:12 +0000 (02:52 -0500)]
bloatpad: test hidden-when=''

Cook up some silly cases to test out the hidden-when='' attribute.

 - make sure hidden-when='action-missing' shows/hides items based on
   actions being created and destroyed

 - make sure hidden-when='action-disabled' shows/hides items based on
   actions being enabled and disabled

 - make sure hidden-when='action-missing' doesn't hide items when the
   action is merely disabled

https://bugzilla.gnome.org/show_bug.cgi?id=688421

12 years agoGtkMenuTracker: remove hidden items from the menu
Ryan Lortie [Sat, 4 Jan 2014 07:28:39 +0000 (02:28 -0500)]
GtkMenuTracker: remove hidden items from the menu

Modify the tracker so that it manages the visibility of
GtkMenuTrackerItem by issuing insert and remove callbacks to the
user of the tracker.

This works by treating the GtkMenuTrackerItem as a virtual section which
contains 1 item when the item is visible and 0 items when it is hidden.

For efficiency reasons, we only employ this trick in the case that the
item has a hidden-when='' attribute set on it.

https://bugzilla.gnome.org/show_bug.cgi?id=688421

12 years agoGtkMenuTrackerItem: add an internal 'visible' flag
Ryan Lortie [Sat, 4 Jan 2014 07:25:43 +0000 (02:25 -0500)]
GtkMenuTrackerItem: add an internal 'visible' flag

Add an internal API for checking if a GtkMenuTrackerItem is visible,
along with a signal for reporting changes in that flag.  The item will
become invisible in situations according to the new hidden-when=''
attribute, which can be set to 'action-disabled' or 'action-missing'.

This new flag doesn't actually do anything yet, and none of the
consumers of GtkMenuTracker do anything with it (nor should they).  A
followup patch will address the issue.

https://bugzilla.gnome.org/show_bug.cgi?id=688421

12 years agoGtkMenuTracker: rework action removal a bit
Ryan Lortie [Sat, 4 Jan 2014 07:11:24 +0000 (02:11 -0500)]
GtkMenuTracker: rework action removal a bit

Refactor the code in the action observer remove function in order to
make way for the (efficient) handling of hiding of the item in the case
that hidden-when='' is given.

https://bugzilla.gnome.org/show_bug.cgi?id=688421

12 years agoGtkMenuTrackerItem: small logic tweak
Ryan Lortie [Sat, 4 Jan 2014 07:04:53 +0000 (02:04 -0500)]
GtkMenuTrackerItem: small logic tweak

Strictly speaking, can_activate should always be set back to FALSE when
the action disappears from the muxer (since we can't activate it
anymore) but we forgot to do that.

This 'bug' could never cause a problem because 'can_activate' is never
directly queried for anything at all and the item would get marked
insensitive anyway.  As soon as the action was re-added, can_activate
would be recalculated based on the new action before anything else could
happen.

All the same, this should be cleared here.

https://bugzilla.gnome.org/show_bug.cgi?id=688421

12 years agoGtkMenuTracker: cache result of hash lookup
Ryan Lortie [Fri, 3 Jan 2014 21:13:01 +0000 (16:13 -0500)]
GtkMenuTracker: cache result of hash lookup

Remove a hash lookup from the separator sync logic (which is run every
time we change a menu).  Instead, we do the lookup when creating the
section and cache the result.

This refactor will also help us in a future commit to add support for
hiding menu items based on missing actions.

https://bugzilla.gnome.org/show_bug.cgi?id=688421

12 years agocolorbutton: fix crash when destroying the colorbutton from the color-set signal
Ignacio Casal Quinteiro [Wed, 8 Jan 2014 13:37:57 +0000 (14:37 +0100)]
colorbutton: fix crash when destroying the colorbutton from the color-set signal

12 years agoUpdated Spanish translation
Daniel Mustieles [Wed, 8 Jan 2014 11:44:09 +0000 (12:44 +0100)]
Updated Spanish translation

12 years agoPixelCache: Ensure clean cairo_t state in draw
Alexander Larsson [Wed, 8 Jan 2014 09:44:32 +0000 (10:44 +0100)]
PixelCache: Ensure clean cairo_t state in draw

This adds save/restore calls to the clear-to-transparent call in
the pixel cache, to avoid changing the default color of the
cairo_t. It also removes a call set_operator call that is no longer
necessary (it was trying to manually restore the state).

https://bugzilla.gnome.org/show_bug.cgi?id=721480

12 years agofix prototypes of signal callbacks in the test suite
Steve Langasek [Tue, 7 Jan 2014 12:55:28 +0000 (13:55 +0100)]
fix prototypes of signal callbacks in the test suite

The signal callbacks are defined to take pointers as their arguments, but the
callbacks found in testsuite/gtk/builder.c are passing a GParamSpec by value
as the second argument.  This confuses and angers the compiler on ppc64el,
resulting in segfaults after return from the function due to stack-smashing
by the (completely-unused) argument.

https://bugzilla.gnome.org/show_bug.cgi?id=721700

12 years agoAdd icon menu to bloatpad.
William Hua [Wed, 8 Jan 2014 04:40:06 +0000 (23:40 -0500)]
Add icon menu to bloatpad.

https://bugzilla.gnome.org/show_bug.cgi?id=710351

12 years agoGtkIconInfo: add gtk_icon_info_is_symbolic()
William Hua [Sun, 15 Dec 2013 02:41:49 +0000 (21:41 -0500)]
GtkIconInfo: add gtk_icon_info_is_symbolic()

https://bugzilla.gnome.org/show_bug.cgi?id=710351

12 years agogtkapplication-quartz: clean up inhibit code
Ryan Lortie [Mon, 16 Dec 2013 15:59:49 +0000 (10:59 -0500)]
gtkapplication-quartz: clean up inhibit code

When testing with bloatpad, the existing inhibit code seems not to be
working at all.  Replace it with a cleaner and simpler version that
works.

https://bugzilla.gnome.org/show_bug.cgi?id=720551

12 years agoapp window: test actiongroup across destroy
Ryan Lortie [Wed, 8 Jan 2014 00:45:19 +0000 (19:45 -0500)]
app window: test actiongroup across destroy

Make sure that we don't violate the interface contract of GActionGroup
just because gtk_widget_destroy() was called.

https://bugzilla.gnome.org/show_bug.cgi?id=710351

12 years agoFix GtkApplicationWindow action group implementation
Ryan Lortie [Mon, 16 Dec 2013 17:25:54 +0000 (12:25 -0500)]
Fix GtkApplicationWindow action group implementation

GtkApplicationWindow frees its internal action group on dispose for the
usual reasons: to avoid the possibility of reference cycles caused by
actions referring back to the window again.

Unfortunately, if it happens to be inside of a GtkActionMuxer at the
time that it is disposed, it will (eventually) be removed from the muxer
after it has been disposed.  Removing an action group from a muxer
involves a call to g_action_group_list_actions() which will crash
because the internal action group to which we normally delegate the call
has been freed.

A future patch that reworks the quartz menu code will introduce a use of
GtkActionMuxer in a way that causes exactly this problem.

We can guard against the problem in a number of ways.

First, we can avoid the entire situation by ensuring that we are removed
from the muxer before we destroy the action group.  To this end, we
delay destruction of the action group until after the chain-up to the
dispose of GtkWindow (which is where the window is removed from the
GtkApplication).

Secondly, we can add checks to each of our GActionGroup and GActionMap
implementation functions to check that the internal action group is
still alive before we attempt to delegate to it.

We have to be careful, though: because our _list_actions() call will
suddenly be returning an empty list, people watching the group from
outside will have expected to see "action-removed" calls for the
now-missing items.  Make sure we send those. but only if someone is
watching.

https://bugzilla.gnome.org/show_bug.cgi?id=710351

12 years agoAdd a reftest for GtkActionBar child ordering
Matthias Clasen [Wed, 8 Jan 2014 00:05:40 +0000 (19:05 -0500)]
Add a reftest for GtkActionBar child ordering

This shows that GtkActionBar and GtkBox treat pack-start/-end
the same.

12 years agoUpdated POTFILES.in
Piotr Drąg [Tue, 7 Jan 2014 22:43:54 +0000 (23:43 +0100)]
Updated POTFILES.in

12 years agoGtkActionBar: Just leave the center widget as NULL, initially
Matthias Clasen [Tue, 7 Jan 2014 21:16:52 +0000 (16:16 -0500)]
GtkActionBar: Just leave the center widget as NULL, initially

No need to construct a box that gets thrown away later.
Plus, this fixes the defaultvalue test for GtkActionBar.

12 years agoRelease-note the headerbar child order change
Matthias Clasen [Tue, 7 Jan 2014 17:50:47 +0000 (12:50 -0500)]
Release-note the headerbar child order change

12 years agoMake testsplitheaders more robust
Matthias Clasen [Tue, 7 Jan 2014 17:44:34 +0000 (12:44 -0500)]
Make testsplitheaders more robust

Same empty string issue that I fixed in GtkHeaderBar a few days
ago.

12 years agoUpdated Hungarian properties translation
Gabor Kelemen [Tue, 7 Jan 2014 17:58:13 +0000 (18:58 +0100)]
Updated Hungarian properties translation

12 years agoAdd an action bar test
Matthias Clasen [Tue, 7 Jan 2014 04:34:41 +0000 (23:34 -0500)]
Add an action bar test

https://bugzilla.gnome.org/show_bug.cgi?id=721665

12 years agoFix order of pack-end widgets
Matthias Clasen [Tue, 7 Jan 2014 04:33:39 +0000 (23:33 -0500)]
Fix order of pack-end widgets

https://bugzilla.gnome.org/show_bug.cgi?id=721665

12 years agowidget-factory: add actionbar
William Jon McCann [Mon, 6 Jan 2014 23:18:00 +0000 (18:18 -0500)]
widget-factory: add actionbar

https://bugzilla.gnome.org/show_bug.cgi?id=721665

12 years agotests: use actionbar in headerbar test
William Jon McCann [Mon, 6 Jan 2014 22:14:14 +0000 (17:14 -0500)]
tests: use actionbar in headerbar test

This is a great example of where headerbar should not be used.

https://bugzilla.gnome.org/show_bug.cgi?id=721665

12 years agoAdd GtkActionBar
William Jon McCann [Mon, 6 Jan 2014 21:36:59 +0000 (16:36 -0500)]
Add GtkActionBar

A widget intended to offer contextual actions for a given view.
It allows packing children into the start or end as well as offering
a single centered child box.

https://bugzilla.gnome.org/show_bug.cgi?id=721665

12 years agoUpdated Spanish translation
Daniel Mustieles [Tue, 7 Jan 2014 12:29:40 +0000 (13:29 +0100)]
Updated Spanish translation

12 years agoUpdated Spanish translation
Daniel Mustieles [Tue, 7 Jan 2014 12:29:30 +0000 (13:29 +0100)]
Updated Spanish translation

12 years agoGtkHeaderBar: Fix positioning of pack-end widgets
Matthias Clasen [Tue, 7 Jan 2014 03:51:11 +0000 (22:51 -0500)]
GtkHeaderBar: Fix positioning of pack-end widgets

This makes the positioning of pack-start and pack-end
widgets symmetric.

12 years agoMake testtitlebar more versatile
Matthias Clasen [Tue, 7 Jan 2014 03:47:57 +0000 (22:47 -0500)]
Make testtitlebar more versatile

Test adding multiple custom widgets at each end. This exposes
that we're doing it wrong - the pack-end widgets are ordered
in the wrong way.

12 years agoUpdate Kazakh translation
Baurzhan Muftakhidinov [Tue, 7 Jan 2014 02:33:22 +0000 (08:33 +0600)]
Update Kazakh translation

12 years agoAvoid compiler warnings
Matthias Clasen [Tue, 7 Jan 2014 01:35:01 +0000 (20:35 -0500)]
Avoid compiler warnings

12 years agofilechooser: Document the settings XML
Federico Mena Quintero [Mon, 6 Jan 2014 23:15:56 +0000 (17:15 -0600)]
filechooser: Document the settings XML

12 years agoBe more careful when parsing gtk-decoration-layout
Matthias Clasen [Mon, 6 Jan 2014 22:05:53 +0000 (17:05 -0500)]
Be more careful when parsing gtk-decoration-layout

When the string is empty, breaking it at : will not give
us two tokens, and we were parsing garbage, leading to crash.
https://bugzilla.gnome.org/show_bug.cgi?id=721635

12 years agoquartz: implement gdk_window_set_shadow_width()
Ryan Lortie [Fri, 13 Dec 2013 04:31:52 +0000 (23:31 -0500)]
quartz: implement gdk_window_set_shadow_width()

Use the information to allow dragging windows all the way to the top of
the screen (ie: allow the top shadow to go under the menubar).

https://bugzilla.gnome.org/show_bug.cgi?id=720374

12 years agoquartz: fix manual window move
Ryan Lortie [Fri, 13 Dec 2013 01:18:01 +0000 (20:18 -0500)]
quartz: fix manual window move

We need to have gdk skip standard processing of events when we are in
manual move in addition to manual resize.

https://bugzilla.gnome.org/show_bug.cgi?id=720357

12 years agotests: add menu alignments to the menubutton test
William Jon McCann [Mon, 6 Jan 2014 18:46:12 +0000 (13:46 -0500)]
tests: add menu alignments to the menubutton test

https://bugzilla.gnome.org/show_bug.cgi?id=720939

12 years agotests: add some space to menubutton test
William Jon McCann [Mon, 6 Jan 2014 18:11:22 +0000 (13:11 -0500)]
tests: add some space to menubutton test

https://bugzilla.gnome.org/show_bug.cgi?id=720939

12 years agoFix positioning of up menu button popup
William Jon McCann [Sun, 22 Dec 2013 17:43:35 +0000 (12:43 -0500)]
Fix positioning of up menu button popup

Use the menu allocation instead of the request size.

https://bugzilla.gnome.org/show_bug.cgi?id=720939

12 years agobloatpad: fix the action associated with the notification
Giovanni Campagna [Mon, 6 Jan 2014 13:05:59 +0000 (14:05 +0100)]
bloatpad: fix the action associated with the notification

Notifications can only be associated with application actions,
but clear is a window action. Introduce a "clear-all" action
that forwards to clear on all windows.

https://bugzilla.gnome.org/show_bug.cgi?id=721633